package exception

import "fmt"

var (
	RunMode = DEV      // dev/test/stage/prod
	Domain  = "GinApi" // api/crontab/queue
)

func SetDomainWithUUID(domain string) {
	fmt.Println("start:", domain)
	Domain = domain
}

const (
	DEV   = "dev"
	TEST  = "test"
	STAGE = "stage"
	PROD  = "prod"
)

// 定义错误
const (

	// 系统通用报错
	SystemErrorCode = 500
	SUCCESS         = 200

	ErrorUsernameUsed   = 1001 // 用户名已经存在！
	ErrorPassword       = 1002 // 密码错误！
	ErrorUserNotExist   = 1003 // 用户名不存在！
	ErrorTokenNotExist  = 1004 // 用户携带的TOKEN不存在！
	ErrorTokenTimeout   = 1005 // 用户携带的TOKEN过期了！
	ErrorTokenWrong     = 1006 // 用户携带的TOKEN错误、虚假的！
	ErrorTokenTypeWrong = 1007 // 用户携带的TOKEN格式错误！
	ErrorUserNoRight    = 1008 // 用户没有管理权限！
)

// error
var (
	SystemError = NewError(SystemErrorCode, "系统出错")
	// 用户登录授权错误
	UsernameUsed   = NewError(ErrorUsernameUsed, "用户名已经存在")
	UserPassword   = NewError(ErrorPassword, "密码错误")
	UserNotExist   = NewError(ErrorUserNotExist, "用户名不存在")
	TokenNotExist  = NewError(ErrorTokenNotExist, "TOKEN不存在")
	TokenTypeWrong = NewError(ErrorTokenTypeWrong, "TOKEN格式错误")
	TokenTimeout   = NewError(ErrorTokenTimeout, "TOKEN过期")
)
